{{tag>gestionnaire_de_fichiers}}

----

====== Midnight Commander (mc) ======

{{:mc:midnight_commander_icone.png?nolink |}}
**Midnight Commander** ou **mc**, est un gestionnaire de fichiers écrit par le fondateur de GNOME, Miguel de Icaza. Il est fortement inspiré de Norton Commander.((Norton Commander fonctionnait sous DOS et eut un grand succès à l'époque du [[wpfr>MS-DOS]].))

Midnight Commander est une application **en mode texte**. L'interface principale **se compose de deux « panneaux »** qui affichent les fichiers présents par rapport à leur emplacement sur le disque. Il inclut un visualiseur et un éditeur de fichiers. Il  facilite grandement la navigation dans l'arborescence des répertoires ainsi que comparaisons, les copies et les déplacements des fichiers. Il permet également de se connecter sur un hôte distant en FTP. C'est un outil qui facilite grandement le travail dans une [[:console]], qu'elle soit locale ou distante via [[:ssh|SSH]] par exemple. 

C'est un logiciel libre distribué selon les termes de la licence GNU GPL. Il fait partie du projet GNU.

{{:mc:midnight_commander_4.6.1_menu_722px.png?direct&500|Interface de MC avec le menu déployé}}

(//Source :  [[wpfr>Fichier:Midnight_Commander_4.6.1_menu.png|Wikipédia]]//)

===== Installation =====

Il vous suffit d'[[:tutoriel:comment_installer_un_paquet|installer le paquet]] **[[apt>mc]]**.

===== Utilisation =====

Midnight Commander est un gestionnaire en mode texte qui doit s'utiliser dans un [[:terminal]] avec la commande "mc".

Si vous créez un [[:raccourci-lanceur|lanceur]], la ligne de commande à insérer sera aussi :
  mc 

mais dans les propriétés du lanceur, dans **type**, il faudra choisir **"Application dans un terminal"** au lieu de "Application".

La procédure ici est indiquée pour Ubuntu. Il faudra l'adapter si vous utilisez [[:Kubuntu]] ou [[:Xubuntu]].

<note tip>L'installation du paquet [[apt>mc]] ajoute automatiquement un lanceur dans la section "Outils système" du menu.</note>

===== Paramètrage =====

==== Sortir en récupérant le répertoire courant ====

Naviguer dans Mc et ne pas conserver le répertoire courant peut vite être frustrant.
Heureusement, il existe une astuce. (inspiré de http://ptspts.blogspot.fr/2010/01/how-to-make-midnight-commander-exit-to.html)

Pour cela, créé vous un fichier de script :
[code]
touch ~/.config/mc/wrapper.sh
[/code]

Voici son contenu :
<code bash>
# on récupère l'identifiant de l'utilisateur
MC_USER=`id | sed 's/[^(]*(//;s/).*//'`
# A partir de cet identifiant, on définit un fichier dans l'espace
# temporaire de cet utilisateur
MC_PWD_FILE="${TMPDIR-/tmp}/mc-$MC_USER/mc.pwd.$$"
# MC est lancé avec l'option -p permettant de sauvegarder le dernier chemin
# parcouru dans un fichier (MC_PWD_FILE en l'occurence)
/usr/bin/mc -P "$MC_PWD_FILE" "$@"

if test -r "$MC_PWD_FILE"; then
    MC_PWD="`cat "$MC_PWD_FILE"`"
    if test -n "$MC_PWD" && test -d "$MC_PWD"; then
        cd "$MC_PWD"
    fi
    unset MC_PWD
    # hack permettant d'éviter (entre autre) à l'extension "powerline"
    # d'afficher la variable MC_PWD plutôt que le chemin complet
    cd `pwd`
fi

rm -f "$MC_PWD_FILE"
unset MC_PWD_FILE
</code>

Ensuite, vous pouvez ajouter l'appel à ce script dans votre .bashrc ou .zshrc :
<code bash>
alias mc=". $HOME/.config/mc/wrapper.sh"
</code>

Une fois cet alias définit, vous pourrez naviguer sur MC et 2 options s'offrirons à vous pour la sortie :
via le raccourci [F10] : vous récupérez votre terminal avec le répertoire courant de  MC!
via la commande exit : vous récupérez le répertoire courant tel que vous l'avez laissé avant le lancer MC.

===== Désinstallation =====

Pour supprimer Midnight Commander, il suffit de [[:tutoriel:comment_supprimer_un_paquet|supprimer son paquet]].

===== Voir aussi =====

  * [[gnome-commander|Gnome Commander]], un peu la même chose que MC mais en GTK pour Gnome (interface graphique).
  * [[krusader|Krusader]], idem avec les bibliothèques Qt pour KDE.
  * [[http://doublecmd.sourceforge.net/|Double Commander]] [en], un autre gestionnaire de fichier multi-plateformes (Linux, Mac OS, Windows), à deux panneaux, en interface graphique, et dont le développement est toujours très actif.
  * [[:gestionnaire_de_fichiers|La page des gestionnaires de fichiers]].

===== Liens =====

  * [[http://www.midnight-commander.org/|Site officiel]] [en]
  * [[http://www.misfu.com/utiliser-configurer-midnight-commander-mc-linux.html|Une petite synthèse de Midnight Commander]] [fr]
  * [[http://www.tuto-linux.com/raspberry-pi/midnight-commander-un-gestionnaire-de-fichiers-tres-leger/|Un petit tuto en français pour bien débuter]] [fr]
  * <del>[[http://www.linux-kheops.com/doc/didact/html/mc.htm|Détail des fonctions de MC]]</del> (Serveur linux-kheops.com hors service :?: FIXME -- 21/07/2014)
  * [[http://jp.barralis.com/linux-man/man1/mc.1.php|La page de manuel de MC]] [fr] -- [[man>mc|Version anglaise]]
  * [[http://www.framasoft.net/article1176.html|La fiche de Midnight Commander sur Framasoft]] [fr]

\\
----
